chore: setup SDD infrastructure with OpenSpec, CLAUDE.md and PR review hook#101
chore: setup SDD infrastructure with OpenSpec, CLAUDE.md and PR review hook#101rviannaoliveira merged 9 commits intomainfrom
Conversation
rviannaoliveira
left a comment
There was a problem hiding this comment.
Review: chore/setup SDD infrastructure
Este PR é de infraestrutura/tooling — não adiciona componentes nem altera código da lib. O checklist de componentes (CraftDBuilder, onAction, registro no manager, testes unitários, docs) não se aplica aqui, o que é correto.
✅ O que está bom
CLAUDE.md
Conteúdo correto e completo. As 10 regras arquiteturais, a estrutura de módulos, os padrões de nomenclatura e o checklist de review estão bem escritos e consistentes com o estado atual do projeto.
openspec/changes/add-craftd-image/notes.md
Excelente captura dos aprendizados do PR #78. Os requisitos derivados são precisos:
- Abstração do
imageLoadervia injeção (regra 10) ✓ - Registro em ambos os managers (Compose/KMP e XML) ✓
- Testes para
toContentScale()com visibilidadeinternal✓ - Aviso sobre evitar duplicação entre
commonMain/androidMain✓
Skills e commands
Os skills de Android/Compose adicionados (testing, accessibility, gradle-logic, compose-ui, compose-performance-audit) estão bem definidos e úteis para o workflow de desenvolvimento.
⚠️ Pontos para atenção
1. Duplicação .claude/ vs .github/
Os mesmos arquivos existem em dois lugares:
.claude/skills/openspec-*/SKILL.mdespelha.github/skills/openspec-*/SKILL.md.claude/commands/opsx/*.mdespelha.github/prompts/opsx-*.prompt.md
Se essa duplicação é intencional (compatibilidade com GitHub Copilot / outros clientes), vale documentar brevemente o motivo no PR ou num README nesses diretórios para futuros colaboradores não ficarem confusos.
2. openspec/changes/add-craftd-image/ está incompleto por design
O scaffold tem apenas .openspec.yaml e notes.md — sem proposal.md, design.md ou tasks.md. Isso parece intencional (para ser preenchido via /opsx:propose), mas confirmar que a mudança não vai ficar em estado de rascunho por muito tempo seria bom. Idealmente, o /opsx:propose deveria ser executado logo após o merge.
3. .claude/settings.json não foi possível inspecionar completamente
O diff do settings.json não apareceu no output. Vale garantir que o hook de auto-review configurado não dispare em PRs de bots (o pr.yml já tem essa restrição para generate-tests.yml — o hook local deveria ter a mesma guarda).
📋 Checklist formal (CLAUDE.md)
| Item | Status |
|---|---|
| Regras arquiteturais (sem dep entre módulos de plataforma) | ✅ N/A — sem código de lib |
CraftDBuilder implementado |
✅ N/A — sem novo componente |
Builder registrado no CraftDBuilderManager |
✅ N/A |
onAction/fallback coberto |
✅ N/A |
| Testes unitários | ✅ N/A — sem código Kotlin |
docs/how-to-use/ atualizado |
✅ N/A — sem mudança em API pública |
Prefixo CraftD, sem valores hardcoded |
✅ N/A |
Veredicto
PR aprovável. A estrutura está sólida como base para o workflow SDD. Recomendo endereçar a questão da duplicação .claude/ vs .github/ (mesmo que só seja um comentário inline) e executar /opsx:propose add-craftd-image logo após o merge para evitar que o scaffold fique em aberto.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add OpenSpec commands and skills (propose, explore, apply, archive) - Add Android/Compose skills (testing, performance, accessibility, gradle, compose-ui) - Update CLAUDE.md with folder patterns, code principles and docs rule - Add GitHub Copilot equivalents (prompts and skills) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add PostToolUse hook that triggers Claude review after gh pr create - Add review-pr.sh script with checklist based on CLAUDE.md rules - Add PR review section to CLAUDE.md with review guidelines Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Rules derived from PR #78 review comments: - Rule 9: every new builder must be registered in CraftDBuilderManager - Rule 10: external library dependencies must be abstracted via interface/parameter Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Rule belongs in propose.md, not in project-level instructions. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7a90cb1 to
0d59811
Compare

Summary
Test plan
Generated with Claude Code